package org.qianji.goosql.cond;

import org.qianji.goosql.Fragment;

/**
 * 查询条件。
 * 
 * @author gmz
 * 
 */
public interface Condition extends Fragment {

	/**
	 * 条件与，当前条件与给定条件进行与组合。
	 * 
	 * @param cond
	 *            {@link Condition} 查询条件
	 * @return {@link Condition} 与组合后的新条件
	 */
	public Condition and(Condition cond);

	/**
	 * 条件或，当前条件与给定条件进行或组合。
	 * 
	 * @param cond
	 *            {@link Condition} 查询条件
	 * @return {@link Condition} 或组合后的新条件
	 */
	public Condition or(Condition cond);

	/**
	 * 条件非，当前条件的相反条件。
	 * 
	 * @return {@link Condition} 非组合后的新条件
	 */
	public Condition not();

}
